package com.tencent.iov.cowin.befsale.clue.controller.clue.vo.request;


import com.software.common.model.request.ScrmBaseRequest;

import lombok.Data;

import org.hibernate.validator.constraints.Length;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import javax.validation.constraints.NotEmpty;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 更新_Request层
 *
 * @author whp
 * @version 1.0
 * @created 2021-12-21 16:16:13
 */
@Data
@ApiModel(description = "线索源信息表_Request层")
public class UpdateClueInitialRequest extends ScrmBaseRequest {

    /**
     * 主键
     */
    @ApiModelProperty(value = "主键", example = "stringValue")
    private Long id;
    /**
     * request_id 请求id
     */
    @ApiModelProperty(value = "request_id 请求id", example = "stringValue")
    private String requestId;
    /**
     * 客户全局唯一id
     */
    @ApiModelProperty(value = "客户全局唯一id", example = "stringValue")
    private String oneId;
    /**
     * 微信唯一编号 添加好友可以获取unionid，添加好友时无oneid
     */
    @ApiModelProperty(value = "微信唯一编号 添加好友可以获取unionid，添加好友时无oneid", example = "stringValue")
    private String unionId;
    /**
     * open企微公开id
     */
    @ApiModelProperty(value = "open企微公开id", example = "stringValue")
    private String openId;
    /**
     * 姓名
     */
    @ApiModelProperty(value = "姓名", example = "stringValue")
    private String name;
    /**
     * 手机号
     */
    @ApiModelProperty(value = "手机号", example = "stringValue")
    private String phone;
    /**
     * 备用手机号
     */
    @ApiModelProperty(value = "备用手机号", example = "stringValue")
    private String phoneBak;
    /**
     * 来源 线上/线下
     */
    @ApiModelProperty(value = "来源 线上/线下", example = "1")
    private Integer sourceFirst;
    /**
     * 来源 经销商/二网/总部
     */
    @ApiModelProperty(value = "来源 经销商/二网/总部", example = "1")
    private Integer sourceSecond;
    /**
     * 来源 渠道code
     */
    @ApiModelProperty(value = "来源 渠道code ", example = "stringValue")
    private String sourceThird;
    /**
     * 活动id
     */
    @ApiModelProperty(value = "活动id", example = "stringValue")
    private String sourceActivityId;
    /**
     * 创建人id
     */
    @ApiModelProperty(value = "创建人id", example = "stringValue")
    private String sourceCreatedbyId;
    /**
     * 性别
     */
    @ApiModelProperty(value = "性别", example = "1")
    private Integer gender;

    /**
     * 客户类型 个人/公司
     */
    @ApiModelProperty(value = "客户类型 个人/公司", example = "1")
    private Integer typeCode;
    /**
     * 年龄
     */
    @ApiModelProperty(value = "年龄", example = "1")
    private Integer age;
    /**
     * 婚姻
     */
    @ApiModelProperty(value = "婚姻", example = "stringValue")
    private String marriage;
    /**
     * 生日
     */
    @ApiModelProperty(value = "生日", example = "stringValue")
    private String birthday;
    /**
     * 省code
     */
    @ApiModelProperty(value = "省code", example = "stringValue")
    private String provinceCode;
    /**
     * 市code
     */
    @ApiModelProperty(value = "市code", example = "stringValue")
    private String cityCode;
    /**
     * 区code
     */
    @ApiModelProperty(value = "区code", example = "stringValue")
    private String districtCode;
    /**
     * 详细地址
     */
    @ApiModelProperty(value = "详细地址", example = "stringValue")
    private String address;
    /**
     * 微信昵称
     */
    @ApiModelProperty(value = "微信昵称", example = "stringValue")
    private String qwName;
    /**
     * 客户备注
     */
    @ApiModelProperty(value = "客户备注", example = "stringValue")
    private String cusRemark;
    /**
     * 意向等级_意向字典
     */
    @ApiModelProperty(value = "意向等级_意向字典", example = "stringValue")
    private String intentionGrade;
    /**
     * 购买方式_意向字典
     */
    @ApiModelProperty(value = "购买方式_意向字典", example = "stringValue")
    private String buyWay;
    /**
     * 拟购时间_意向字典
     */
    @ApiModelProperty(value = "拟购时间_意向字典", example = "stringValue")
    private String mayBuyTime;
    /**
     * 购车类型_意向字典
     */
    @ApiModelProperty(value = "购车类型_意向字典", example = "stringValue")
    private String buyVehicleType;
    /**
     * 购车用途_意向字典
     */
    @ApiModelProperty(value = "购车用途_意向字典", example = "stringValue")
    private String buyVehicleUse;
    /**
     * 车辆价格_意向字典
     */
    @ApiModelProperty(value = "车辆价格_意向字典", example = "stringValue")
    private String buyVehiclePrice;

    /**
     * 大字段类型表bef_text_field id  车意向json 上面的品牌到配置集合
     */
    @ApiModelProperty(value = "大字段类型表bef_text_field id  车意向json 上面的品牌到配置集合", example = "stringValue")
    private Long textFieldId;
    /**
     * 跟进人id，org_成员id
     */
    @ApiModelProperty(value = "跟进人id，org_成员id", example = "stringValue")
    private Long followEmpId;
    /**
     * 清洗状态，0清洗 1已处理
     */
    @ApiModelProperty(value = "清洗状态，0清洗 1已处理 ", example = "1")
    private Integer cleanType;
    /**
     * 企微通讯录用户编号	添加企微好友后，可获取客户用户的user_id
     */
    @ApiModelProperty(value = "企微通讯录用户编号	添加企微好友后，可获取客户用户的user_id", example = "stringValue")
    private String userId;
    /**
     * 租户id
     */
    @ApiModelProperty(value = "租户id", example = "stringValue")
    private String tenantId;
    /**
     * 经销商id
     */
    @ApiModelProperty(value = "经销商id", example = "stringValue")
    private String dealerId;
    /**
     * 企微id
     */
    @ApiModelProperty(value = "企微id", example = "stringValue")
    private String corpId;
    /**
     * 产品介绍code list id标签
     */
    @ApiModelProperty(value = "产品介绍code list id标签", example = "stringValue")
    private String prodCode;
    /**
     * 本次跟进备注
     */
    @ApiModelProperty(value = "本次跟进备注", example = "stringValue")
    private String followRemark;
    /**
     * 跟进内容标签id（到店接待，试乘试驾，下订，交车）
     */
    @ApiModelProperty(value = "跟进内容标签id（到店接待，试乘试驾，下订，交车）", example = "stringValue")
    private String followContent;
    /**
     * 到店接待_进店时间
     */
    @ApiModelProperty(value = "到店接待_进店时间", example = "2020-03-28T13:46:56.711Z")
    private Date checkinTime;
    /**
     * 到店接待_离店时间
     */
    @ApiModelProperty(value = "到店接待_离店时间", example = "2020-03-28T13:46:56.711Z")
    private Date checkoutTime;
    /**
     * 试乘试驾_意向车型id
     */
    @ApiModelProperty(value = "试乘试驾_意向车型id", example = "stringValue")
    private Long driveModelId;
    /**
     * 试乘试驾_意向配置id
     */
    @ApiModelProperty(value = "试乘试驾_意向配置id", example = "stringValue")
    private Long driveConfigId;
    /**
     * 下订_车型id
     */
    @ApiModelProperty(value = "下订_车型id", example = "stringValue")
    private Long orderModelId;
    /**
     * 下订_配置id
     */
    @ApiModelProperty(value = "下订_配置id", example = "stringValue")
    private Long orderConfigId;
    /**
     * 下订_姓名
     */
    @ApiModelProperty(value = "下订_姓名", example = "stringValue")
    private String orderName;
    /**
     * 下订_手机号
     */
    @ApiModelProperty(value = "下订_手机号", example = "stringValue")
    private String orderPhone;
    /**
     * 下订_金额
     */
    @ApiModelProperty(value = "下订_金额", example = "0.1")
    private BigDecimal orderMoney;
    /**
     * 下订_交车时间
     */
    @ApiModelProperty(value = "下订_交车时间", example = "2020-03-28T13:46:56.711Z")
    private Date orderDeliveryTime;
    /**
     * 下订_地址
     */
    @ApiModelProperty(value = "下订_地址", example = "stringValue")
    private String orderAddress;
    /**
     * 交车_姓名
     */
    @ApiModelProperty(value = "交车_姓名", example = "stringValue")
    private String deliveryName;
    /**
     * 交车_手机号
     */
    @ApiModelProperty(value = "交车_手机号", example = "stringValue")
    private String deliveryPhone;
    /**
     * 下次计划跟进内容标签id（0产品介绍 1到店接待，2试乘试驾，3下订，4交车）
     */
    @ApiModelProperty(value = "下次计划跟进内容标签id（0产品介绍 1到店接待，2试乘试驾，3下订，4交车）", example = "stringValue")
    private String planFollowContent;
    /**
     * 下次跟进时间
     */
    @ApiModelProperty(value = "下次跟进时间", example = "2020-03-28T13:46:56.711Z")
    private Date planFollowTime;
    /**
     * 下次跟进时间code
     */
    @ApiModelProperty(value = "下次跟进时间code", example = "stringValue")
    private String planFollowTimeCode;
    /**
     * 下次跟进预约id
     */
    @ApiModelProperty(value = "下次跟进预约id", example = "stringValue")
    private Long planFollowId;
    /**
     * 跟进备注
     */
    @ApiModelProperty(value = "跟进备注", example = "stringValue")
    private String planFollowRemark;
    /**
     * 意向车型id ，逗号隔开 list id
     */
    @ApiModelProperty(value = "意向车型id ，逗号隔开 list id", example = "stringValue")
    private String planModelId;
    /**
     * 意向配置id ，逗号隔开 list id
     */
    @ApiModelProperty(value = "意向配置id ，逗号隔开 list id", example = "stringValue")
    private String planConfigId;
    /**
     * 第三方预约编号
     */
    @ApiModelProperty(value = "第三方预约编号", example = "stringValue")
    private Long arrangeNo;
    /**
     * 线索源状态（0新建、1已处理，2重复无效、3手机号码无效、4电话无效)
     */
    @ApiModelProperty(value = "线索源状态（0新建、1已处理，2重复无效、3手机号码无效、4电话无效)", example = "1")
    private Integer status;
    /**
     * 删除标志（0：代表存在、-1：代表删除）
     */
    @ApiModelProperty(value = "删除标志（0：代表存在、-1：代表删除）", example = "1")
    private Integer deleted;
    /**
     * 创建人
     */
    @ApiModelProperty(value = "创建人", example = "stringValue")
    private String createdBy;
    /**
     * 创建人名称
     */
    @ApiModelProperty(value = "创建人名称", example = "stringValue")
    private String createdName;
    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间", example = "2020-03-28T13:46:56.711Z")
    private Date createdTime;
    /**
     * 修改人
     */
    @ApiModelProperty(value = "修改人", example = "stringValue")
    private String updatedBy;
    /**
     * 修改人名称
     */
    @ApiModelProperty(value = "修改人名称", example = "stringValue")
    private String updatedName;
    /**
     * 修改时间
     */
    @ApiModelProperty(value = "修改时间", example = "2020-03-28T13:46:56.711Z")
    private Date updatedTime;

    /**
     * 添加微信手机号
     */
    @ApiModelProperty(value = "添加微信手机号", example = "stringValue")
    private String phoneWx;

    /**
     * 外部联系人id
     */
    @ApiModelProperty(value = "外部联系人id", example = "stringValue")
    private String externalUserid;
    /**
     * 主数据customer_base表主键id
     */
    @ApiModelProperty(value = "主数据customer_base表主键id", example = "stringValue")
    private Long customerBaseId;
    /**
     * 预约类型
     */
    @ApiModelProperty(value = "预约类型", example = "stringValue")
    private String arrangeType;

}